/**
 * @program: leetcode048
 * @author: JCM
 * @create: 2022-11-30 19:52
 * @description: 旋转图像
 **/
public class LeetCode048 {
    public void rotate(int[][] matrix) {
        int len = matrix[0].length;
        // 用一个数组将矩阵中的数据保存下来
        int[] arr = new int[len*len];
        for(int i = 0; i < len; i++) {
            for(int j = 0; j < len; j++) {
                arr[i*len+j] = matrix[i][j];
            }
        }
        // 根据公式进行移动
        for(int i = 0; i < len; i++) {
            int next = (i+1)*(len-1)%len;
            for(int j = 0;j < len; j++) {
                matrix[j][next] = arr[i*len+j];
            }
        }
    }
}
